home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text.html;
-
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Graphics;
- import java.awt.Insets;
- import java.io.Serializable;
- import javax.swing.border.BevelBorder;
- import javax.swing.border.Border;
- import javax.swing.border.LineBorder;
- import javax.swing.text.AttributeSet;
- import javax.swing.text.View;
- import javax.swing.text.html.CSS.Attribute;
-
- public class StyleSheet$BoxPainter implements Serializable {
- Border border;
- Insets binsets;
- CSS css;
- // $FF: renamed from: ss javax.swing.text.html.StyleSheet
- StyleSheet field_0;
-
- StyleSheet$BoxPainter(AttributeSet var1, CSS var2, StyleSheet var3) {
- this.field_0 = var3;
- this.css = var2;
- this.border = this.getBorder(var1);
- this.binsets = this.border.getBorderInsets((Component)null);
- }
-
- Border getBorder(AttributeSet var1) {
- Object var2 = StyleSheet.noBorder;
- Object var3 = var1.getAttribute(Attribute.BORDER_STYLE);
- if (var3 != null) {
- String var4 = var3.toString();
- int var5 = (int)this.getLength(Attribute.BORDER_WIDTH, var1);
- if (var5 > 0) {
- if (var4.equals("inset")) {
- Color var6 = this.getBorderColor(var1);
- var2 = new BevelBorder(1, var6.brighter(), var6.darker());
- } else if (var4.equals("outset")) {
- Color var7 = this.getBorderColor(var1);
- var2 = new BevelBorder(0, var7.brighter(), var7.darker());
- } else if (var4.equals("solid")) {
- Color var8 = this.getBorderColor(var1);
- var2 = new LineBorder(var8);
- }
- }
- }
-
- return (Border)var2;
- }
-
- Color getBorderColor(AttributeSet var1) {
- Color var2 = this.css.getColor(var1, Attribute.BORDER_COLOR);
- if (var2 == null) {
- var2 = this.css.getColor(var1, Attribute.COLOR);
- if (var2 == null) {
- return Color.black;
- }
- }
-
- return var2;
- }
-
- public float getInset(int var1, View var2) {
- AttributeSet var3 = var2.getAttributes();
- float var4 = 0.0F;
- switch (var1) {
- case 1:
- var4 += this.getLength(Attribute.MARGIN_TOP, var3);
- var4 += (float)this.binsets.top;
- var4 += this.getLength(Attribute.PADDING_TOP, var3);
- break;
- case 2:
- var4 += this.getLength(Attribute.MARGIN_LEFT, var3);
- var4 += (float)this.binsets.left;
- var4 += this.getLength(Attribute.PADDING_LEFT, var3);
- break;
- case 3:
- var4 += this.getLength(Attribute.MARGIN_BOTTOM, var3);
- var4 += (float)this.binsets.bottom;
- var4 += this.getLength(Attribute.PADDING_BOTTOM, var3);
- break;
- case 4:
- var4 += this.getLength(Attribute.MARGIN_RIGHT, var3);
- var4 += (float)this.binsets.right;
- var4 += this.getLength(Attribute.PADDING_RIGHT, var3);
- break;
- default:
- throw new IllegalArgumentException("Invalid side: " + var1);
- }
-
- return var4;
- }
-
- float getLength(CSS.Attribute var1, AttributeSet var2) {
- return this.css.getLength(var2, var1);
- }
-
- public void paint(Graphics var1, float var2, float var3, float var4, float var5, View var6) {
- AttributeSet var7 = var6.getAttributes();
- StyleSheet var8 = this.field_0;
- float var9 = this.getLength(Attribute.MARGIN_TOP, var7);
- float var10 = this.getLength(Attribute.MARGIN_LEFT, var7);
- var2 += var10;
- var3 += var9;
- var4 -= var10 + this.getLength(Attribute.MARGIN_RIGHT, var7);
- var5 -= var9 + this.getLength(Attribute.MARGIN_BOTTOM, var7);
- Color var11;
- if (var8 != null) {
- var11 = var8.getBackground(var7);
- } else {
- var11 = null;
- }
-
- if (var11 != null) {
- var1.setColor(var11);
- var1.fillRect((int)var2, (int)var3, (int)var4, (int)var5);
- }
-
- this.border.paintBorder((Component)null, var1, (int)var2, (int)var3, (int)var4, (int)var5);
- }
- }
-